pkgname=devicepkg-dev
pkgver=0.12.3
pkgrel=0
pkgdesc="Provides default device package functions"
url="https://postmarketos.org"
arch="all"
license="MIT"
depends="postmarketos-splash"
source="
	compiler-gcc.h
	devicepkg_build.sh
	devicepkg_package.sh
	downstreamkernel_prepare.sh
	downstreamkernel_package.sh
	devicepkg_subpackage_kernel.sh
	testdata/deviceinfo
	testdata/expected-deviceinfo-downstream
	testdata/expected-deviceinfo-mainline
"

check() {
	# Prepare a temporary dir to run the tests
	testdir=$(mktemp -d)
	install -Dm644 "$srcdir/deviceinfo" \
		"$testdir/src/deviceinfo"

	# Execute the script to create the subpackage deviceinfo
	sh devicepkg_subpackage_kernel.sh \
		$testdir linux-test linux-test-kernel-downstream
	sh devicepkg_subpackage_kernel.sh \
		$testdir linux-test linux-test-kernel-mainline

	# Compare the result with the expected files
	if ! cmp -s "$srcdir/expected-deviceinfo-downstream" \
		"$testdir/pkg/linux-test-kernel-downstream/etc/deviceinfo"; then
		echo "ERROR: unexpected result with downstream deviceinfo"
		exit 1
	fi
	if ! cmp -s "$srcdir/expected-deviceinfo-mainline" \
		"$testdir/pkg/linux-test-kernel-mainline/etc/deviceinfo"; then
		echo "ERROR: unexpected result with mainline deviceinfo"
		exit 1
	fi

	# Cleanup
	rm -r "$testdir"
}

package() {
	install -Dm755 "$srcdir/devicepkg_build.sh" \
		"$pkgdir/usr/bin/devicepkg_build"
	install -Dm755 "$srcdir/devicepkg_package.sh" \
		"$pkgdir/usr/bin/devicepkg_package"
	install -Dm755 "$srcdir/downstreamkernel_prepare.sh" \
		"$pkgdir/usr/bin/downstreamkernel_prepare"
	install -Dm755 "$srcdir/downstreamkernel_package.sh" \
		"$pkgdir/usr/bin/downstreamkernel_package"
	install -Dm755 "$srcdir/devicepkg_subpackage_kernel.sh" \
		"$pkgdir/usr/bin/devicepkg_subpackage_kernel"
	install -Dm644 "$srcdir/compiler-gcc.h" \
		"$pkgdir/usr/share/devicepkg-dev/compiler-gcc.h"
}
sha512sums="d69930dd790b00fb39760a37d95a10899f0d167e10e2804feb05d9ce04f94185dc32d36edc90214aba2ea2aa09bf18f7dab93f1d2eff23f67beb2cc83be30e7c  compiler-gcc.h
30f116f668bad60a0e62ef3e0625c331a1b044f5bbd137eb7b909039675f4aefca7e0206b755167b834aabd31fcf28b53c6f1a61782da66fd05f9dfcd09c0664  devicepkg_build.sh
74c1b9b265a943604d5d538ca66d4b7bcad9adcf40710ab19d795b55aac39669bf1089f7f0ec81aa7a01b537784bef4310e4acc3d7a6ba1f282ab01652bdc4d4  devicepkg_package.sh
53aa129da5bd52376271bbd37ed7205f2dac971d442c5085260ed1c4a9b014a656cbe28ea45d242be60a2d0f8851611f3b8352c880c017995cda6ae093e5d324  downstreamkernel_prepare.sh
776d7c36afc7bedbd531641abe90fa4bf06a519ad9e300dedf67b6d3b4997b57a398938dd528d5eeda6d17e0d34644472702a4fdd8ff41e0a4a7ad0671f4a216  downstreamkernel_package.sh
cf5ee240cd1c1e9d30cdec833b4a007fd2e00f9a32ba3f265f99aa2e3dd3601cf43c08d3f3e01bade1d5b2648a6754b2f236e5cb4a9945e18e5c4e97aa2ed7c8  devicepkg_subpackage_kernel.sh
9bb7f2a0930f397a713e9f4b6d5b83a426d9a2a3f692dcc42ac30717bf26ead869d8823a38f3ad388af12b2b9a02e8ec4d4418e9c2062389ed06d2b891a49ff3  deviceinfo
136247a16ec91dc0c7241eeddb28c2196ae3b29946a9bc7e9566f848491ef1c53b12d05bf2dbc1cc352986712fd76f25c1510bcc8f301af540a2f01c33b299e1  expected-deviceinfo-downstream
8cdbf149e1bdfaf4d4a246a208732836956fd81a3aa01ef968e4c2e2cca4027f71cfc38e22debade83ddfca4e05267983c1c8a9c1aa9461a8cf493ef7e893097  expected-deviceinfo-mainline"
